package com.hz.pay.center.service;

import com.hz.pay.center.model.PaySerialInfo;
import com.pay.common.req.NetBankPayReq;

import java.util.List;

/**
 * 支付流水相关接口
 */
public interface IPaySerialService {

    /**
     * 创建支付流水
     * @param netBankPayReq
     * @return
     */
    public PaySerialInfo createPaySerial(NetBankPayReq netBankPayReq);

    /***
     * 根据支付流水号查询
     * @param paySerialNo
     * @return
     */
    public PaySerialInfo queryByPaySerialNo(String paySerialNo);

    /**
     * 更新支付流水的状态
     * @param paySerialInfo
     */
    public void updateTrade(PaySerialInfo paySerialInfo);

    /**
     * 查询所有支付状态为，1 和 2 的数据
     * @param payChannel
     * @return
     */
    public List<PaySerialInfo> queryAllPollingList(String payChannel);

    /**
     * 根据订单号查询支付流水
     * @param orderId
     * @return
     */
    public PaySerialInfo queryByOrderId(String orderId);

}
